1. Field of the Invention
The present invention generally relates to tools for developing software for international use, and in particular to multi-language software development. More specifically, the present invention relates to performing language translation in computer software.
2. Related Art
In a Translation Verification Test (xe2x80x9cTVTxe2x80x9d) process, a program, that is, a targeted software application, exists already that has been created in one language and then translated into a different language. Conventionally, a user sitting in front of a computer runs the translated application to verify the translation, based on their native language knowledge of the language into which the program has been translated. That is, the user executes the translated program, including interacting with it through the user interface of the program in order to exercise the various displays the program generates, to verify that the translation is grammatically and contextually proper.
Conventionally, when a word or phrase is found that needs to be changed, the user must manually find the program source code portion or file that generates the phrase or word to be changed. Even if the user finds the phrase or word, this manual method is susceptible to mistakes if the user finds the wrong instance of the phrase or word.
To address this and other problems, an Introspective Editor, which has been described in the above cross-referenced patent applications, uses introspection in the JAVA programming language to allow the user to more directly edit the displays for the target application while performing the TVT process. (JAVA is a trademark of Sun Microsystems.) According to the inventions described in those patent applications, the Introspective Editor permits the user to use a special key sequence when a word or phrase needs to be changed. The Introspective Editor then finds the correct instance in the source code that generates the word or phrase.
While the improvements provided by these inventions are extremely helpful, they still leave certain aspects of the editing process to be performed manually. In particular, they do not address certain source code control issues. Therefore a need exists for further improvements relating to the integration of the Introspective Editor into the TVT process.
The foregoing need is addressed, in one form, in a method for editing text for a software program under test. It is an objective of the invention that source code version control is integrated with an editor for the TVT process. According to the method, a display is generated for a target software program, including certain text, responsive to a user interface object. A user selection of a portion of the text for changing is accepted by an editor. The editor introspects the user interface object to find a text object having the selected text portion stored in a localization file. The editor then directs a source code version controller to check out the file and accepts a change of the text inputted by the user. The editor changes the text in the file and directs the source code version controller to check in the file with the changed text portion.
In one aspect, directing the source code version controller to check out the localization file includes directing the source code version controller to a filename and path for the file.
According to another form of the invention, an apparatus for editing text for a target software program, includes a processor, a monitor connected to the processor, and a storage system connected to the processor. A certain program for controlling the processor is stored in the storage system. The processor is operative with the certain program to generate a display for the target software program on the monitor. Generating the display includes displaying text responsive to a user interface object.
The apparatus also includes a user interface device connected to the processor. The user interface device is operable with the processor and the certain program to provide a selector interface for accepting a user selection of a portion of the text displayed on the monitor for changing by the user and to provide a changer interface for accepting a change in the text portion input by the user.
The apparatus also includes a localization file stored in the storage system. The processor is operable with the certain program to find a text object, which has the selected text portion and is stored in the localization file, responsive to introspecting the user interface object. The processor is operable with the certain program to direct a source code version controller to check out the file, which the certain program changes, and to direct the source code version controller to check in the file, including the changed text portion.
In another form, a computer program product includes instructions for performing certain of the steps described herein.
It is an advantage of the invention that certain manual efforts of the user are automated by integrating source code versioning control and editing.